#pip install opencv-python import cv2 import os # Ouvrir le fichier vidéo video = cv2.VideoCapture("Ta vidéo.mp4") # Demander les temps de début et de fin (en heures, minutes, secondes et fractions de seconde) start_time = input("Entrez le temps de début (h:m:s.f): ") end_time = input("Entrez le temps de fin (h:m:s.f): ") # Convertir les temps de début et de fin en secondes avec fractions de seconde start_time = sum(x * float(t) for x, t in zip([3600, 60, 1, 1/1000], start_time.split(":"))) end_time = sum(x * float(t) for x, t in zip([3600, 60, 1, 1/1000], end_time.split(":"))) # Définir le nom de dossier pour enregistrer les images folder_name = "images_video" # Créer le dossier s'il n'existe pas déjà if not os.path.exists(folder_name): os.makedirs(folder_name) # Définir le compteur d'image count = 0 # Parcourir la vidéo image par image while True: # Lire l'image suivante ret, frame = video.read() # Vérifier si la fin de la vidéo est atteinte if not ret: break # Déterminer le temps de l'image actuelle (en secondes) current_time = video.get(cv2.CAP_PROP_POS_MSEC) / 1000 # Vérifier si l'image actuelle est dans l'intervalle souhaité if current_time >= start_time and current_time <= end_time: # Convertir le temps en heures, minutes, secondes et fractions de seconde time_str = f"{int(current_time//3600):02d};{int((current_time%3600)//60):02d};{int(current_time%60):02d};{int((current_time*1000)%1000):03d}" # Enregistrer l'image dans le dossier spécifié image_name = os.path.join(folder_name, f"{time_str}.png") cv2.imwrite(image_name, frame) count += 1 # Vérifier si le temps de la vidéo dépasse le temps final if current_time > end_time: break # Fermer la vidéo video.release()